package org.tea.inventory.domain.tea;

import com.fasterxml.jackson.annotation.JsonFormat;
import io.swagger.annotations.ApiModel;
import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import lombok.NoArgsConstructor;

import javax.validation.constraints.NotBlank;
import java.io.Serializable;
import java.util.Date;

@ApiModel(value = "商品类别表")
@Data
@NoArgsConstructor
public class ProductCategory implements Serializable {
    /**
     * 主键
     */
    @ApiModelProperty(value = "主键")
    private Long id;

    /**
     * 类别编号
     */
    @ApiModelProperty(value = "类别编号")
    @NotBlank(message = "商品类别编号不能为空")
    private String categoryCode;

    /**
     * 类别名称
     */
    @ApiModelProperty(value = "类别名称")
    @NotBlank(message = "商品类别编号不能为空")
    private String categoryName;

    /**
     * 类别级别
     */
    @ApiModelProperty(value = "类别级别")
    private Integer categoryLevel;

    /**
     * 父类别id
     */
    @ApiModelProperty(value = "父类别id")
    private Long categoryParentId;

    public void setParentId(Long parentId) {
        this.parentId = parentId;
        this.categoryParentId = parentId;
    }

    private Long parentId;

    /**
     * 父类别id
     */
    @ApiModelProperty(value = "父类别编号")
    private String categoryParentCode;

    /**
     * 父类别名称
     */
    @ApiModelProperty(value = "父类别名称")
    private String categoryParentName;

    /**
     * 商品类别状态
     */
    @ApiModelProperty(value = "商品类别状态")
    private Boolean status;


    /** 是否删除：0未删除，1已删除 */
    @ApiModelProperty(value = "是否删除： 0未删除，1已删除")
    private Integer delFlag;

    /**
     * 创建时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "创建时间")
    private Date createDate;
    private String createDateStr;

    /**
     * 创建者
     */
    @ApiModelProperty(value = "创建者")
    private String createUserId;

    /**
     * 更新时间
     */
    @JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
    @ApiModelProperty(value = "更新时间")
    private Date updateDate;

    /**
     * 更新者
     */
    @ApiModelProperty(value = "更新者")
    private String updateUserId;
}